//
//  ZJUserInfoModel.h
//  LovingPartyBuilding
//
//  Created by ZJ on 2017/5/15.
//  Copyright © 2017年 刘应平. All rights reserved.
//

#import <Foundation/Foundation.h>

#define USER_INFO  @"userInfo"
#define DEPT_48 @"DEPT_48"//48个直属机构
#define DEPT_36 @"DEPT_36"//36个街道

@class ZJAccountInfo;
@class ZJRoleInfoModel;
@class ZJUnitInfoModel;
@class ZJUserModel;
@class ZJDeptModel;
@class ZJPartymember;
@interface ZJUserInfoModel : NSObject


/** 账户信息字典 */
@property (nonatomic, strong) NSDictionary *ORG_ACCOUNT_Dict;
/** 账户信息 */
@property (nonatomic, strong) ZJAccountInfo *ORG_ACCOUNT;

/** 党员信息 */
@property (nonatomic, strong) NSDictionary *ORG_PARTYMEMBER;
/** 党员信息model */
@property (nonatomic, strong) ZJPartymember *ORG_PARTYMEMBER_MODEL;
/** <#name#> */
@property (nonatomic, strong) NSArray *ORG_ZC_DEPT;
/** <#name#> */
@property (nonatomic, strong) ZJDeptModel *ORG_ZC_DEPT_FirstModel;

/** 党组织、党建中心数组 */
@property (nonatomic, strong) NSArray *DEPT;
/** 党组织、党建中心数组Model */
@property (nonatomic, strong) NSMutableArray<ZJDeptModel *> *DEPT_MODEL;

/** 有在用户先取在职用户，没有再取在册用户 */
@property (nonatomic, strong) ZJDeptModel *CURRENT_DEPT_MODEL;
/** 在职党员对应的————党组织、党建中心 */
@property (nonatomic, strong) ZJDeptModel *DEPT_MODEL_JOB;
/** 在册党员对应的————党组织、党建中心 */
@property (nonatomic, strong) ZJDeptModel *DEPT_MODEL_BOOK;

/** 用户数组 */
@property (nonatomic, strong) NSArray *ORG_USER;
/** 用户数组Model */
@property (nonatomic, strong) NSMutableArray<ZJUserModel *> *ORG_USER_MODEL;
/** 有在职用户先取在职用户，没有再取在册用户 */
@property (nonatomic, strong) ZJUserModel *CURRENT_USER_MODEL;

/**  角色数组  */
@property (strong, nonatomic) NSArray  *ORG_ROLE;
/**  筛选的书记的model数组  */
@property (strong, nonatomic) NSMutableArray<ZJRoleInfoModel *>  *secretary_Role_Model_Array;
/** 用户数组Model */
@property (nonatomic, strong) NSMutableArray<ZJRoleInfoModel *> *ORG_ROLE_MODEL;
/** 角色model  */
@property (strong, nonatomic) ZJRoleInfoModel  *CURRENT_ROLE_MODEL;
/**  书记名下的党组织  */
@property (strong, nonatomic) NSString  *secretaryOrg;
/**  当前支部数据  */
@property (strong, nonatomic) ZJDeptModel  *CURRENT_BRANCH_MODEL;




/** 在职党员 */
@property (nonatomic, strong) ZJUserModel *USER_MODEL_JOB;
/** 在册党员 */
@property (nonatomic, strong) ZJUserModel *USER_MODEL_BOOK;

/**  判断是否是书记  */
@property (assign, nonatomic) BOOL   isSecretary;




+ (ZJUserInfoModel *)sharedUserInfo;
/**< 更行用户数据到沙盒 */
+ (void)updateUserInfoToNSUserDefaults;
/**< 从沙盒中读取数据用户数据 */
+ (void)updateUserInfoFormNSUserDefaults;

@end

//账户信息
@interface ZJAccountInfo : NSObject
/** ACCOUNTID账号id */
@property (nonatomic, strong) NSString *ID;
/** 手机号 （唯一）*/
@property (nonatomic, strong) NSString *MOBILE;
/** 姓名 */
@property (nonatomic, strong) NSString *USER_NAME;
/** 昵称 */
@property (nonatomic, strong) NSString *NICK_NAME;
/** 登录名（唯一） */
@property (nonatomic, strong) NSString *LOGIN_NAME;
/** 微信号（唯一） */
@property (nonatomic, strong) NSString *WECHAT_ID;
/** QQID（唯一） */
@property (nonatomic, strong) NSString *QQ_ID;
/** 邮箱 */
@property (nonatomic, strong) NSString *EMAIL;
/** 身份证号 */
@property (nonatomic, strong) NSString *IDCARD;
/** 性别(0:未设置；1：男；2：女) */
@property (nonatomic, strong) NSString *SEX;
/** 性别(0:普通人员；1：普通管理员；2：超级管理员) */
@property (nonatomic, strong) NSString *ISWORK;
/** 状态(0:无效；1：有效) */
@property (nonatomic, strong) NSString *STATUS;
/** 头像地址（缩略图） */
@property (nonatomic, strong) NSString *PHOTO_THUMBURL;
/** 头像地址（原图） */
@property (nonatomic, strong) NSString *PHOTO_URL;
/** 封面地址（原图） */
@property (nonatomic, strong) NSString *COVER_URL;
/** 封面地址（缩略图） */
@property (nonatomic, strong) NSString *COVER_THUMBURL;
/** 二维码地址 */
@property (nonatomic, strong) NSString *CODE_URL;
/** 生日（yyyy-mm形式） */
@property (nonatomic, strong) NSString *BIRTHMONTH;
/** 入党时间（yyyy-mm-dd形式） */
@property (nonatomic, strong) NSString *JOINMONTH;
/** 创建时间 */
@property (nonatomic, strong) NSString *CREATETIME;
/** 更新时间 */
@property (nonatomic, strong) NSString *UPDATETIME;

/** 家庭地址 */
@property (nonatomic, strong) NSString *ADDRESS;
/** 工作单位 */
@property (nonatomic, strong) NSString *WORKUNIT;
/** 文化程度（0：未设置；1：小学以下；2：初中；3：中专、高中；4：大专；5：大学；6：硕士、研究生以上） */
@property (nonatomic, strong) NSString *EDUCATION;
/** 姓名全拼 */
@property (nonatomic, strong) NSString *FULL_SPELL;
/** 姓名简拼 */
@property (nonatomic, strong) NSString *SIMPLE_SPELL;
/** 当前身份，当前机构ID */
@property (nonatomic, strong) NSString *CURRENTIDENTITY;
/** 激活状态（0：未激活，1：已激活） */
@property (nonatomic, strong) NSString *ACTIVE_STATUS;
/**  党员id  */
@property (strong, nonatomic) NSString  *PARTY_MEMBER_ID;



///测试
/** 部门id */
@property (nonatomic, strong) NSString *department_id;

@end

///角色信息
@interface ZJRoleInfoModel : NSObject
/** 部门名称 */
@property (nonatomic, strong) NSString *DEP_NAME;
/** 部门id */
@property (nonatomic, strong) NSString *FID;
/** 角色id */
@property (nonatomic, strong) NSString *ID;
/** 角色名称 */
@property (nonatomic, strong) NSString *ROLENAME;
/** 角色账户id */
@property (nonatomic, strong) NSString *ACCOUNT_ID;
/**  */
@property (nonatomic, strong) NSString *COMMITTEETEXT;
/**  */
@property (nonatomic, strong) NSString *COMMITTEETYPE;
/** 机构ID */
@property (nonatomic, strong) NSString *DEPT_ID;
/**  */
@property (nonatomic, strong) NSString *ISCHILDRENACCOUNT;
/** X姓名 */
@property (nonatomic, strong) NSString *NAME;
/**  党员ID*/
@property (nonatomic, strong) NSString *PARTY_MEMBER_ID;
/** 角色  如果为1角色是书记，否则不是 */
@property (nonatomic, strong) NSString *ROLE_CODE;
/**    */
@property (strong, nonatomic) NSString  *SORT;

/**  */
@property (nonatomic, strong) NSString *ROLE_GROUP;
/**  */
@property (nonatomic, strong) NSString *ROLE_NAME;
/**    */
@property (strong, nonatomic) NSString  *SHOWORDER;
/**    */
@property (strong, nonatomic) NSString  *UNIT_ID;

@end

///机构信息
@interface ZJUnitInfoModel : NSObject
/** 机构id */
@property (nonatomic, strong) NSString *ID;
/** 机构名称 */
@property (nonatomic, strong) NSString *UNIT_NAME;

@end

///用户信息
@interface ZJUserModel : NSObject
/** 用户id */
@property (nonatomic, strong) NSString *ID;
/** 账户ID */
@property (nonatomic, strong) NSString *ACCOUNTID;
/** 用户类型(1：群众；2：在职党员；3：在册党员) 默认为1 */
@property (nonatomic, strong) NSString *USER_TYPE;
/** 状态(0:无效；1：有效) 默认为1 */
@property (nonatomic, strong) NSString *USER_STATUS;
/** 是否有个人需求 */
@property (nonatomic, strong) NSString *ISDEMAND;
/** ISSERVICE */
@property (nonatomic, strong) NSString *ISSERVICE;

/** 机构ID（32个0：总平台 */
@property (nonatomic, strong) NSString *UNITID;
/** 党员认证状态 0：未认证  1：待认证  2：认证通过  -1：拒绝  */
@property (nonatomic, strong) NSString *AUTH_STATUS;
/** 入党状态（0：未申请；1：申请中；2：积极分子；3：发展对象；4：预备党员；5：转正党员；-1：拒绝申请） */
/**  报到审核退回原因  */
@property (strong, nonatomic) NSString  *EXAMINERESULT;

@property (nonatomic, strong) NSString *JOIN_STATUS;
/** 党员状态（-4：停止党籍；-3：死亡；-2：出党；-1：转出；0：正常；1：转入；2：内部调动） */
@property (nonatomic, strong) NSString *MEMBER_STATUS;
/** 当前列入时间 */
@property (nonatomic, strong) NSString *CURRENT_ENROLTIME;

/** 所在党委（冗余） */
@property (nonatomic, strong) NSString *DEPTNAME_1;
/** 所在党总支（冗余） */
@property (nonatomic, strong) NSString *DEPTNAME_2;
/** 所在党支部（冗余） */
@property (nonatomic, strong) NSString *DEPTNAME_3;
/** 所在党小组（冗余） */
@property (nonatomic, strong) NSString *DEPTNAME_4;

/** 总积分*/
@property (nonatomic, strong) NSString *INTEG_TOTAL;
/** 可用积分 */
@property (nonatomic, strong) NSString *INTEG_REST;
/**  需求代码分类 */
@property (nonatomic, strong) NSString *NEED_DSCODE_GROUP;
/** 需求代码值(逗号分隔) */
@property (nonatomic, strong) NSString *NEED_DSCODE_VALUE;
/** 需求名称（逗号分隔）*/
@property (nonatomic, strong) NSString *NEED_DSCODE_NAMES;
/** 特长代码分类 */
@property (nonatomic, strong) NSString *SPECIALTY_DSCODE_GROUP;
/** 特长代码值（逗号分隔）) */
@property (nonatomic, strong) NSString *SPECIALTY_DSCODE_VALUE;
/** 特长名称（逗号分隔） */
@property (nonatomic, strong) NSString *SPECIALTY_DSCODE_NAMES;
/** 注册单位名称 */
@property (nonatomic, strong) NSString *COMP_NAME;

@end

///党组织、党建中心
@interface ZJDeptModel : NSObject

/** dept表id */
@property (nonatomic, copy) NSString *ID;
/** 父ID */
@property (nonatomic, copy) NSString *FID;
/** 父名字 */
@property (nonatomic, copy) NSString *F_DEPT_NAME;
/** 全局ID */
@property (nonatomic, copy) NSString *GLOBALID;
/** 部门名称 */
@property (nonatomic, copy) NSString *DEPT_NAME;
/** 部门层级（越小代表越高） */
@property (nonatomic, copy) NSString *DEPT_LV;
/** 排序 */
@property (nonatomic, copy) NSString *SORT;
/** 部门类型 */
@property (nonatomic, copy) NSString *DEPT_TYPE;
/** 党组织代码 */
@property (nonatomic, copy) NSString *DEPTCODE;
/** 党组织代码完整 */
@property (nonatomic, copy) NSString *DEPTCODE_FULL;
/** 党组织简称 */
@property (nonatomic, copy) NSString *DEPTABBREVIATION;
/** 组织类别代码分类 */
@property (nonatomic, copy) NSString *DEPTTYPE_DSCODE_GROUP;
/** 组织类别代码值 */
@property (nonatomic, copy) NSString *DEPTTYPE_DSCODE_VALUE;
/** 组织隶属代码分类 */
@property (nonatomic, copy) NSString *DEPTRELATIONSHIP_DSCODE_GROUP;
/** 组织隶属代码值 */
@property (nonatomic, copy) NSString *DEPTRELATIONSHIP_DSCODE_VALUE;
/** 所属分类代码分类 */
@property (nonatomic, copy) NSString *DEPTCATEGORY_DSCODE_GROUP;
/** 所属分类代码值 */
@property (nonatomic, copy) NSString *DEPTCATEGORY_DSCODE_VALUE;
/** 上级党组织代码 */
@property (nonatomic, copy) NSString *FCODE;
/** 批准建立日 */
@property (nonatomic, copy) NSString *APPROVAL_CREATEDATE;
/** 批准建立文号 */
@property (nonatomic, copy) NSString *APPROVAL_DOCNUMBER;
/** 离退休党组织类型代码分类 */
@property (nonatomic, copy) NSString *RETIREORG_DSCODE_GROUP;
/** 离退休党组织类型代码值 */
@property (nonatomic, copy) NSString *RETIREORG_DSCODE_VALUE;
/** 党组织所在单位基本情况代码分类 */
@property (nonatomic, copy) NSString *DEPTBASICSTATIC_DSCODE_GROUP;
/** 党组织所在单位基本情况代码值 */
@property (nonatomic, copy) NSString *DEPTBASICSTATIC_DSCODE_VALUE;
/** 书记身份类型代码分类 */
@property (nonatomic, copy) NSString *DEPTSECRETARY_IDENTITY_DSCODE_GROUP;
/** 书记身份类型代码值 */
@property (nonatomic, copy) NSString *DEPTSECRETARY_IDENTITY_DSCODE_VALUE;
/** 党组织书记账户id */
@property (nonatomic, copy) NSString *DEPTSECRETARY_ACCOUNTID;
/** 党组织书记电话 */
@property (nonatomic, copy) NSString *DEPTSECRETARY_MOBILE;
/** 党组织书记姓名 */
@property (nonatomic, copy) NSString *DEPTSECRETARY_NAME;
/** 党组织联系人账户id */
@property (nonatomic, copy) NSString *DEPTCONTACTS_ACCOUNTID;
/** 党组织联系人电话 */
@property (nonatomic, copy) NSString *DEPTCONTACTS_MOBILE;
/** 党组织联系人姓名 */
@property (nonatomic, copy) NSString *DEPTCONTACTS_NAME;
/** 党组织联系地址 */
@property (nonatomic, copy) NSString *DEPTCONTACTS_ADDRESS;
/** 党组织联系电话 */
@property (nonatomic, copy) NSString *MOBILE;
/** 邮编 */
@property (nonatomic, copy) NSString *ZIPCODE;
/** 传真号 */
@property (nonatomic, copy) NSString *FAXNUMBER;
/** 所在楼宇名称 */
@property (nonatomic, copy) NSString *ADDRESS_NAME;
/** 所属单位代码 */
@property (nonatomic, copy) NSString *OWNER_COMP_CODE;
/** 党建中心地址表id */
@property (nonatomic, copy) NSString *DEPTCONCENTER_ADDRESS_ID;
/** 1：党组织，2党小组3党建中心 */
@property (nonatomic, copy) NSString *ORGDEPT_STATUS;
/** 党建中心名称 */
@property (nonatomic, copy) NSString *ORGCONCENTER_NAME;
/** 党建中心简介 */
@property (nonatomic, copy) NSString *ORGCONCENTER_COMMENT;
/** 党建中心照片多个用逗号分隔 */
@property (nonatomic, copy) NSString *ORGCONCENTER_PHONES;
/** 党建中心地址 */
@property (nonatomic, copy) NSString *ORGCONCENTER_ADDRESS;
/** 党建中心详细地址,门牌号，楼层等 */
@property (nonatomic, copy) NSString *ORGCONCENTER_DETAILEDADDRESS;
/** 党建中心地图坐标（逗号分隔） */
@property (nonatomic, copy) NSString *ORGCONCENTER_COORDINATE;
/** 联系人 */
@property (nonatomic, copy) NSString *CONTACTS_PERSON;
/** 联系电话 */
@property (nonatomic, copy) NSString *CONTACTS_MOBILE;
/** 党组织所在单位基本情况代码名称 */
@property (nonatomic, copy) NSString *DEPTBASICSTATIC_DSCODE_NAME;
/** 所属分类代码名称 */
@property (nonatomic, copy) NSString *DEPTCATEGORY_DSCODE_NAME;
/** 书记身份类型代码名称 */
@property (nonatomic, copy) NSString *DEPTSECRETARY_IDENTITY_DSCODE_NAME;
/** 组织类别代码名称 */
@property (nonatomic, copy) NSString *DEPTTYPE_DSCODE_NAME;
/** 离退休党组织类型代码名称 */
@property (nonatomic, copy) NSString *RETIREORG_DSCODE_NAME;
/** 组织隶属代码名称 */
@property (nonatomic, copy) NSString *DEPTRELATIONSHIP_DSCODE_NAME;
/** 详细地址 */
@property (nonatomic, copy) NSString *DEPT_DEADDRESS;
/** 详细地址坐标（经度） */
@property (nonatomic, copy) NSString *DEPT_DEADDRESS_COORDINATE_X;
/** 详细地址坐标（纬度） */
@property (nonatomic, copy) NSString *DEPT_DEADDRESS_COORDINATE_Y;

/** 是否接受党员报道  */
@property (nonatomic, copy) NSString *ISREPORT;


@end

///党员表
@interface ZJPartymember : NSObject
/** ID */
@property (nonatomic, copy) NSString *ID;
/** 组织名称 */
@property (nonatomic, copy) NSString *GCUNIT;

/** 是不是本地  0不是本地（外区）  1.是本地不是外区 */
@property (nonatomic, copy) NSString *ISLOCAL;
@end
